/**
 * 目标二：压缩 js 里代码，并整合到 html 中一起运行
 *  2.1 读取 public/index.js 内容
 *  2.2 使用正则替换内容字符串里的，回车符\r 换行符\n 打印语句console.log('xxx');
 *  2.3 确认后，拼接 html 内容写入到 dist/index.html 内
 */
const fs = require('fs')
const path = require('path')

try {
  //1.读取public/index.js 内容
  const data = fs.readFileSync(path.join(__dirname, './public/index.js'))
  const scriptStr = data.toString()
  //2.2 使用正则替换内容字符串里的，回车符\r 换行符\n 打印语句console.log('xxx');
  // \.匹配普通符号  .+？非贪婪模式
  const scriptStr2 = scriptStr.replace(/[\r\n]/g, '').replace(/console\.log\(.+?\);/g, '')
  // console.log(scriptStr2)
  //3.确认后，拼接 html 内容写入到 dist/index.html 内
  //3.1 读取 html 文件并压缩
  const htmlStr = fs.readFileSync(path.join(__dirname, './public/index.html'))
  const htmlStr2 = htmlStr.toString().replace(/[\r\n]/g, '')

  //3.2 拼接 html +js 写入文件
// 将生成的HTML内容和内联脚本写入到指定的文件中
fs.writeFileSync(path.join(__dirname, './dist/index.html'), htmlStr2 + `<script>${scriptStr2}</script>`)
// 打印成功消息
console.log('压缩成功')
} catch (error) {
  // 打印失败消息及错误详情
  console.log('压缩失败', error)
}
